package com.yuhuihui.common.utils.excel.read.convert.impl;

import com.yuhuihui.common.utils.ConverterUtil;
import com.yuhuihui.common.utils.excel.read.convert.AbstractCellTypeConvert;
import com.yuhuihui.common.utils.excel.read.convert.CellTypeConvertParameter;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellType;

import java.text.ParseException;

/**
 * 公式类型转换
 *
 * @author yuhh
 * @date 2022-08-22 16:22:55
 * @see AbstractCellTypeConvert
 */
public class FormulaCellTypeConvertImpl implements AbstractCellTypeConvert {

	@Override
	public Object cellTypeConvert(CellTypeConvertParameter parameter) throws ParseException {
		Cell cell = parameter.getCell();
		return ConverterUtil.convert(parameter.getParameterType(), cell.getNumericCellValue());
	}

	@Override
	public int getTypeCode() {
		return CellType.FORMULA.ordinal();
	}

}
